package org.rslai.tcedit.business;

import java.util.List;
import org.rslai.tcedit.domain.Page;
import org.rslai.tcedit.domain.Role;
import org.springframework.transaction.annotation.Transactional;

/**
 * 角色 业务逻辑接口
 * @author rslai
 */
@Transactional
public interface RoleService extends BaseService {

	/***
	 * 查询角色列表
	 * @param asc true 为升序，false 为降序
	 * @return
	 */
	@Transactional(readOnly = true)
	public List<Role> query(boolean asc);

	/**
	 * 根据输入的角色名查询角色列表
	 * @param page page
	 * @param name 角色名，角色名前后加 % 号为模糊查询，例如：%role%。不加 % 为精确查询。 只有 % 为查询所有
	 * @param asc true 为升序，false 为降序
	 * @return
	 */
	@Transactional(readOnly = true)
	public List<Role> query(Page page, String name, boolean asc);

	/**
	 * 查询邦定到产品的角色列表
	 * @param bonding true 为邦定到产品的角色列表，false 为没邦定到产品的角色列表(系统角色)
	 * @return
	 */
	@Transactional(readOnly = true)
	public List<Role> queryBonding(boolean bonding);

}
